using System;
using System.Collections.Generic;
using System.Drawing;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace GURUCORE.Portal.AspNet.Control
{
    [DefaultProperty("Text")]
    [ToolboxData("<{0}:GuruCloud runat=server></{0}:GuruCloud>")]
    [ToolboxBitmap(typeof(GuruCloud), "resGuruCloud.ico")]
    [Description("GuruCloud is a Cloud member in the Storm (TagCloud) ")]
    public class GuruCloud : WebControl
    {
        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Text
        {
            get
            {
                String s = (String)ViewState["Text"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Text"] = value;
            }
        }


        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Size
        {
            get
            {
                String s = (String)ViewState["Size"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Size"] = value;
            }
        }


        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Color1
        {
            get
            {
                String s = (String)ViewState["Color1"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Color1"] = value;
            }
        }



        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Color2
        {
            get
            {
                String s = (String)ViewState["Color2"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Color2"] = value;
            }
        }


        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Split1
        {
            get
            {
                String s = (String)ViewState["Split1"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Split1"] = value;
            }
        }



        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string Split2
        {
            get
            {
                String s = (String)ViewState["Split2"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Split2"] = value;
            }
        }



        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string HoverTitle
        {
            get
            {
                String s = (String)ViewState["HoverTitle"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["HoverTitle"] = value;
            }
        }



        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string HoverField1
        {
            get
            {
                String s = (String)ViewState["HoverField1"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["HoverField1"] = value;
            }
        }


        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string HoverField2
        {
            get
            {
                String s = (String)ViewState["HoverField2"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["HoverField2"] = value;
            }
        }


        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue(".")]
        [Localizable(true)]
        public string HoverField3
        {
            get
            {
                String s = (String)ViewState["HoverField3"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["HoverField3"] = value;
            }
        }


        protected override void RenderContents(HtmlTextWriter output)
        {
            output.Write(Text + Size
                + Color1 + Color2
                + Split1 + Split2
                + HoverTitle
                + HoverField1 + HoverField2 + HoverField3);
        }

    }
}
